// Copyright (c) MatrixFramework. All rights reserved.
// Licensed under the MIT License. See LICENSE in the project root for license information.

using System.Net.Http;

namespace MatrixFramework.Keycloak.Abstractions.Services;

/// <summary>
/// Keycloak HTTP客户端工厂接口
/// </summary>
public interface IKeycloakClientFactory
{
    /// <summary>
    /// 创建Keycloak HTTP客户端
    /// </summary>
    /// <returns>HTTP客户端</returns>
    HttpClient CreateClient();

    /// <summary>
    /// 创建带认证的Keycloak HTTP客户端
    /// </summary>
    /// <param name="realmName">Realm名称</param>
    /// <returns>HTTP客户端</returns>
    HttpClient CreateAuthenticatedClient(string realmName);
}
